const sharp = require('sharp')
const path = require('path')

// 检查命令行参数是否正确
if (process.argv.length !== 3) {
  console.error('命令行参数格式错误。正确格式为：cmd file_name');
  process.exit(1);
}

//获取图片文件名
const fileName = process.argv[2];
console.log(fileName);

// 判断当前文件名是否为空
if (!path.basename(__filename)) {
  console.log('图片文件不存在！');
}

sharp(fileName)
  .metadata()
  .then(metadata => {
    console.log(`width:${metadata.width}`);
    console.log(`height:${metadata.height}`);
    if (metadata.colorspace === 'srgb' || metadata.colorspace === 'rgb') {
      console.log('color depth: 24 bits');
    } else if (metadata.colorspace === 'cmyk') {
      console.log('color depth: 32 bits');
    } else {
      console.log('color depth: Unknown');
    }
  })
  .catch((err) => {
    console.error('Error:', err)
  })